home *** CD-ROM | disk | FTP | other *** search
- /* xdr_rdb.h - xdr for additional rdb structures */
-
- /*
- modification history
- --------------------
- 01a,23may90,llk created using xdr_dbx.h.
- added arg_array to replace arg_info. arg_info had
- MAXNCMDARGS (= 100) as the max limit of char strings,
- but it should be MAX_TASK_ARGS (= 10).
- */
-
- #ifndef INCxdrrdbh
- #define INCxdrrdbh
-
- enum arg_type {
- T_UNKNOWN = 0,
- T_BYTE = 1,
- T_WORD = 2,
- T_INT = 3,
- T_FLOAT = 4,
- T_DOUBLE = 5
- };
- typedef enum arg_type arg_type;
- bool_t xdr_arg_type();
-
-
- struct arg_value {
- arg_type type;
- union {
- char v_byte;
- short v_word;
- int v_int;
- float v_fp;
- double v_dp;
- } arg_value_u;
- };
- typedef struct arg_value arg_value;
- bool_t xdr_arg_value();
-
- struct func_call {
- int func_addr;
- struct {
- u_int args_len;
- arg_value *args_val;
- } args;
- };
- typedef struct func_call func_call;
- bool_t xdr_func_call();
-
-
- typedef char *arg_one;
- bool_t xdr_arg_one();
-
-
- typedef struct {
- u_int arg_array_len;
- arg_one *arg_array_val;
- } arg_array;
- bool_t xdr_arg_array();
-
-
- /*
- * Structures used to pass structures required for
- * process control but not part of the standard ptrace interface
- */
-
- /*
- * arg_info is used to pass arguments into process start
- */
- struct arg_info {
- int rargc;
- char **rargv;
- };
- typedef struct arg_info Arg_info;
-
-
- enum EVENT_TYPE {
- EVENT_BREAK = 0,
- EVENT_STOP = 1,
- EVENT_EXIT = 2,
- EVENT_BUS_ERR = 3,
- EVENT_SUSPEND = 4,
- EVENT_ZERO_DIV = 5,
- EVENT_SIGNAL = 6,
- EVENT_START = 7
- };
- typedef enum EVENT_TYPE EVENT_TYPE;
-
-
- struct RDB_EVENT {
- int status;
- int taskId;
- EVENT_TYPE eventType;
- int sigType;
- };
- typedef struct RDB_EVENT RDB_EVENT;
-
-
- struct TASK_START {
- int status;
- int pid;
- };
- typedef struct TASK_START TASK_START;
-
-
- struct SYMBOL_ADDR {
- int status;
- u_int addr;
- };
- typedef struct SYMBOL_ADDR SYMBOL_ADDR;
-
- struct SOURCE_STEP {
- int taskId;
- u_int startAddr;
- u_int endAddr;
- };
- typedef struct SOURCE_STEP SOURCE_STEP;
-
- #define MAX_ARG_CNT 10
- #define MAX_FUNC_ARGS 100
- #define MAX_ARG_LEN 100
-
- bool_t xdr_arg_info();
- bool_t xdr_EVENT_TYPE();
- bool_t xdr_RDB_EVENT();
- bool_t xdr_TASK_START();
- bool_t xdr_SYMBOL_ADDR();
- bool_t xdr_SOURCE_STEP();
-
- #define RDBPROG (u_long) 0x44444444
- #define RDBVERS (u_long) 1
- #endif INCxdrrdbh
-